<?php
ignore_user_abort();
set_time_limit(0);
// 文件路径
define('ABSPATH', dirname(__FILE__));
// 数据库链接地址
define('DBHOST', 'localhost');
// 数据库用户名
define('DBUSER', 'infohash');
// 数据库登陆密码
define('DBPASS', 'a123456');
// 数据库名
define('DBNAME', 'infohash');

// 载入类文件
require_once ABSPATH . '/inc/DB.class.php';
require_once ABSPATH . '/inc/Torrent.class.php';
require_once ABSPATH . '/inc/Storage.class.php';
require_once ABSPATH . '/inc/Lightbenc.class.php';

// 保存文件列表
$logs = [];
// 保存进程列表
$worker = [];

// 打开当前目录
if(false != ($handle = opendir(ABSPATH))){
    $i = 0;
    // 循环获取记录文件
    while(false !== ($file = readdir($handle))){
        if($file != '.' && $file != '..' && strpos($file, '.')){
            if(strtolower(substr($file, strrpos($file, '.') + 1)) == 'log')
                $logs[$i] = ABSPATH . '/' . $file;

            $i++;
        }
    }
    // 关闭目录
    closedir($handle);
}

// 检查是否存在文件
if(count($logs) == 0)
    exit;

if(!file_exists(ABSPATH . '/torrent'))
    @mkdir(ABSPATH . '/torrent');

// 循环读取文件
foreach($logs as $log){
    // 读取文件信息
    $txt = json_decode(file_get_contents($log));

    // 循环获取hash信息
    foreach($txt as $ha => $hot){
        $db = new DB;

        if($db->check($ha)){
            $hh = '_' . $ha;
            $db->$hh = $hot;
            $db->close();
            continue;
        }
        $db->close();

        // 创建Storage对象
        $thread = new Storage($ha, $hot);
        // 执行操作
        $thread->start();
    }
}

exit(0);